package com.molichuxing.gateway.bff.order.entity.response;

import com.molichuxing.framework.dto.ResponseRootDto;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.math.BigDecimal;
import java.time.LocalDate;
import java.time.LocalDateTime;

/**
 * 还款计划vo
 *
 * @author zhaopenghui
 * @date 2020年6月8日
 */
@Data
public class EnterpriseScheduleVo extends ResponseRootDto {
    private static final long serialVersionUID = 287798107069283552L;
    @ApiModelProperty(value = "订单号")
    private Long orderCode;

    @ApiModelProperty(value = "排期id")
    private Integer scheduleId;

    @ApiModelProperty(value = " 企业id")
    private Integer enterpriseId;

    @ApiModelProperty(value = "企业名称")
    private String enterpriseName;

    @ApiModelProperty(value = "排期")
    private Integer periods;

    @ApiModelProperty(value = "总排期")
    private Integer totalPeriods;

    /**
     * 实付金额 arrival_amount
     */
    @ApiModelProperty(value = "实付金额/到账金额")
    private BigDecimal arrivalAmount;

    /**
     * 应付日期 payable_date
     */
    @ApiModelProperty(value = "应付日期")
    private LocalDate payableDate;

    /**
     * 实付时间 pay_time
     */
    @ApiModelProperty(value = "实付时间/付款时间")
    private LocalDateTime payTime;

    /**
     * 状态（0：未还款，1：已还款，2：已终止） state
     */
    @ApiModelProperty(value = " 状态（0：未还款，1：已还款，2：已终止）")
    private Integer state;

    /**
     * 状态（0：未还款，1：已还款，2：已终止） state
     */
    @ApiModelProperty(value = "状态（0：未还款，1：已还款，2：已终止）")
    private String stateStr;

    /**
     * 租期（1：1个月，n：n个月） tenancy
     */
    @ApiModelProperty(value = "租期（1：1个月，n：n个月）")
    private Integer tenancy;

    /**
     * 还款周期（1：1个月，n：n个月） repayment_period
     */
    @ApiModelProperty(value = "还款周期（1：1个月，n：n个月）")
    private Integer repaymentPeriod;

    /**
     * 车辆数
     */
    @ApiModelProperty(value = "车辆数")
    private Integer carCount;

    /**
     * 还款金额 payable
     */
    @ApiModelProperty(value = "应还金额")
    private BigDecimal allPayable;

    /**
     * id
     */
    @ApiModelProperty(value = "支付记录id")
    private Integer paymentEnterpriseId;

    /**
     * 流水编号 serial_number
     */
    @ApiModelProperty(value = "流水编号")
    private String serialNumber;

    /**
     * 付款方 payer
     */
    @ApiModelProperty(value = "付款方")
    private String payer;

    /**
     * 付款方账号 payer_account
     */
    @ApiModelProperty(value = "付款方账号")
    private String payerAccount;

    /**
     * 收款方 payee
     */
    @ApiModelProperty(value = "收款方")
    private String payee;

    /**
     * 收款开户行 payee_bank
     */
    @ApiModelProperty(value = "收款开户行")
    private String payeeBank;

    /**
     * 收款方账号 payee_account
     */
    @ApiModelProperty(value = "收款方账号")
    private String payeeAccount;
    /**
     * 备注 remark
     */
    @ApiModelProperty(value = "支付备注")
    private String remark;


    /**
     * 逾期天数
     */
    @ApiModelProperty(value = "逾期天数")
    private Integer overdueDays;

}
